# -*- coding: utf-8 -*-
"""
Created on Sun Aug 13 09:54:32 2023

@author: skunk69
"""

import json

chinese_name = u'医院焦虑抑郁量表'
english_name = 'Hospital Anxiety and Depression Scale'
abbreviation = 'HAD'
category = u'精神病学临床量表'

outline = u"""医院焦虑抑郁量表由Zigmond as与Snaith RP于1983年创制。主要应用于综合医院病人中焦虑和抑郁情绪的筛查。原文为英文，此后被翻译为阿拉伯文、德文、日文、意大利文等多种文字。中文版本有香港Leung CM等(1993)的一个川和由叶维菲、徐俊冕(1993)翻译的一个闭，另外还有一个用粤语翻译的版本。HAD共由14个条目组成，其中7个条目评定抑郁，7个条目评定焦虑。"""

instruction = u"""情绪在大多数疾病中起着重要作用，如果医生了解您的情绪变化，他们就能给您更多的帮助。请您阅读以下各个项目，选择其中最符合你过去一个月的情绪评价。对这些问题的回答不要做过多的考虑，立即做出的回答往往更符合实际情况。"""

with open('HAD.txt','r',encoding='utf-8') as f:
    lines = f.readlines()
    f.close()

items = {}
rating = []
for i in range(0,len(lines),5):
    key = i//5+1
    line = lines[i].strip().split('.')
    items[key] = line[-1]
    
    rating_lines = [line.split('.')[-1] for line in lines[i+1:i+5]]
    rating.append({key:line.strip() for key,line in enumerate(rating_lines)})

reverse_items = []
scales = [u'焦虑',u'抑郁']
scales_items = [list(range(1,15,2)),list(range(2,15,2))]
factors = []
factors_scales = []
score_rules = list(range(0,4))

contents = {
    'instruction':instruction,
    'items':items,
    'reverse_items':reverse_items,
    'scales':scales,
    'scales_items':scales_items,
    'factors':factors,
    'factors_scales':factors_scales,
    'rating':rating,
    'score_rules':score_rules       
    }

implementation = u"""《医院焦虑抑郁量表》属于一个自评量表。"""

reliability = u"""国内通过在综合医院中的应用，结果表明，HAD对抑郁症的筛查比焦虑症更加有效，与SAS和SDS有较好的相关性。"""
validity = u"""Barczak P (1988)用8分作为临界值，用DSM-III诊断作为金标准，发现其对抑郁和焦虑的灵敏度分别为82％和70％，特异性各为94％和68％。但Silverstone PH (1994)发现，采用8分作为临界值，HAD预测DSM-III-R抑郁症的灵敏度尚能令人满意（在综合医院和精神科中分别为100％和80％），但其特异性却只有17％或29％，因此认为该量表只能用于筛查。
HAD在设计上可区分为2个因子，在研究中采用因子分析方法也能较为可靠地划分为两个互相关联的因子，只有香港的中文版本得出3个因子的结果。"""
measurements = {'reliability':reliability,'validity':validity}

interpretation = u"""将各维度条目相加得到各维度分，所有条目得分相加得到总分。
采用HAD的主要目的是进行焦虑、抑郁的筛选检查，因此重要的一点是确定一个公认的临界值。各研究中所采用的临界值不尽相同。按原作者的标准，焦虑与抑郁两个分量表的分值划分为0~7分属无症状；8~10分属症状可疑；11~21分属肯定存在症状。叶维菲等翻译的大陆版本在综合医院进行过严格测试。采用CCMD-2诊断以及SDS和SAS作为参照，发现以9分作为焦虑或抑郁的临界值可以得到较好的敏感性与特异性。故推荐这一临界点。"""

applications = u"""HAD显然只是一个焦虑和抑郁的筛查量表，最佳用途是作为综合医院医生筛查可疑存在焦虑或抑郁症状的病人，对阳性的病人应进行进一步的深人检查以明确诊断并给予相应的治疗。该量表不宜作为流行学调查或临术研究中的诊断工具。"""

this_scale = {
    'chinese_name':chinese_name,
    'english_name':english_name,
    'abbreviation':abbreviation,
    'category':category,
    'outline':outline,
    'contents':contents,
    'implementation':implementation,
    'measurements':measurements,
    'interpretation':interpretation,
    'applications':applications    
    }

with open(abbreviation+'.json','w+',encoding='utf-8') as f:
    json.dump(this_scale,f,indent=2,ensure_ascii=False)